TSTP Solution File: SWV428^2 by cvc5---1.0.5

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cvc5---1.0.5
% Problem  : SWV428^2 : TPTP v8.1.2. Released v3.6.0.
% Transfm  : none
% Format   : tptp
% Command  : do_cvc5 %s %d

% Computer : n012.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Thu Aug 31 21:51:26 EDT 2023

% Result   : Theorem 0.20s 0.57s
% Output   : Proof 0.20s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13  % Problem    : SWV428^2 : TPTP v8.1.2. Released v3.6.0.
% 0.00/0.14  % Command    : do_cvc5 %s %d
% 0.14/0.35  % Computer : n012.cluster.edu
% 0.14/0.35  % Model    : x86_64 x86_64
% 0.14/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.35  % Memory   : 8042.1875MB
% 0.14/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.35  % CPULimit   : 300
% 0.14/0.35  % WCLimit    : 300
% 0.14/0.35  % DateTime   : Tue Aug 29 09:56:39 EDT 2023
% 0.14/0.35  % CPUTime    : 
% 0.20/0.48  %----Proving TH0
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.49  % File     : SWV428^2 : TPTP v8.1.2. Released v3.6.0.
% 0.20/0.49  % Domain   : Software Verification (Security)
% 0.20/0.49  % Problem  : ICL logic mapping to modal logic S4 implies 'Ex1'
% 0.20/0.49  % Version  : [Ben08] axioms : Augmented.
% 0.20/0.49  % English  :
% 0.20/0.49  
% 0.20/0.49  % Refs     : [GA08]  Garg & Abadi (2008), A Modal Deconstruction of Access
% 0.20/0.49  %          : [Ben08] Benzmueller (2008), Automating Access Control Logics i
% 0.20/0.49  %          : [BP09]  Benzmueller & Paulson (2009), Exploring Properties of
% 0.20/0.49  % Source   : [Ben08]
% 0.20/0.49  % Names    :
% 0.20/0.49  
% 0.20/0.49  % Status   : Theorem
% 0.20/0.49  % Rating   : 0.38 v8.1.0, 0.55 v7.5.0, 0.43 v7.4.0, 0.44 v7.3.0, 0.56 v7.2.0, 0.50 v7.0.0, 0.43 v6.4.0, 0.33 v6.3.0, 0.40 v6.2.0, 0.57 v6.1.0, 0.43 v6.0.0, 0.29 v5.5.0, 0.67 v5.4.0, 0.60 v5.3.0, 0.80 v5.2.0, 0.60 v5.0.0, 0.40 v4.1.0, 0.33 v4.0.0, 0.67 v3.7.0
% 0.20/0.49  % Syntax   : Number of formulae    :   63 (  24 unt;  33 typ;  24 def)
% 0.20/0.49  %            Number of atoms       :  110 (  24 equ;   0 cnn)
% 0.20/0.49  %            Maximal formula atoms :   12 (   3 avg)
% 0.20/0.49  %            Number of connectives :   90 (   3   ~;   1   |;   2   &;  83   @)
% 0.20/0.49  %                                         (   0 <=>;   1  =>;   0  <=;   0 <~>)
% 0.20/0.49  %            Maximal formula depth :    8 (   2 avg)
% 0.20/0.49  %            Number of types       :    3 (   1 usr)
% 0.20/0.49  %            Number of type conns  :  127 ( 127   >;   0   *;   0   +;   0  <<)
% 0.20/0.49  %            Number of symbols     :   40 (  37 usr;   8 con; 0-3 aty)
% 0.20/0.49  %            Number of variables   :   49 (  39   ^;   6   !;   4   ?;  49   :)
% 0.20/0.49  % SPC      : TH0_THM_EQU_NAR
% 0.20/0.49  
% 0.20/0.49  % Comments : 
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.49  %----Include axioms of multi modal logic
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.49  %----Our possible worlds are are encoded as terms the type  $i;
% 0.20/0.49  %----Here is a constant for the current world:
% 0.20/0.49  thf(current_world,type,
% 0.20/0.49      current_world: $i ).
% 0.20/0.49  
% 0.20/0.49  %----Modal logic propositions are then becoming predicates of type ( $i> $o);
% 0.20/0.49  %----We introduce some atomic multi-modal logic propositions as constants of
% 0.20/0.49  %----type ( $i> $o):
% 0.20/0.49  thf(prop_a,type,
% 0.20/0.49      prop_a: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(prop_b,type,
% 0.20/0.49      prop_b: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(prop_c,type,
% 0.20/0.49      prop_c: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  %----The idea is that an atomic multi-modal logic proposition P (of type
% 0.20/0.49  %---- $i >  $o) holds at a world W (of type  $i) iff W is in P resp. (P @ W)
% 0.20/0.49  %----Now we define the multi-modal logic connectives by reducing them to set
% 0.20/0.49  %----operations
% 0.20/0.49  %----mfalse corresponds to emptyset (of type $i)
% 0.20/0.49  thf(mfalse_decl,type,
% 0.20/0.49      mfalse: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mfalse,definition,
% 0.20/0.49      ( mfalse
% 0.20/0.49      = ( ^ [X: $i] : $false ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mtrue corresponds to the universal set (of type $i)
% 0.20/0.49  thf(mtrue_decl,type,
% 0.20/0.49      mtrue: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mtrue,definition,
% 0.20/0.49      ( mtrue
% 0.20/0.49      = ( ^ [X: $i] : $true ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mnot corresponds to set complement
% 0.20/0.49  thf(mnot_decl,type,
% 0.20/0.49      mnot: ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mnot,definition,
% 0.20/0.49      ( mnot
% 0.20/0.49      = ( ^ [X: $i > $o,U: $i] :
% 0.20/0.49            ~ ( X @ U ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mor corresponds to set union
% 0.20/0.49  thf(mor_decl,type,
% 0.20/0.49      mor: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mor,definition,
% 0.20/0.49      ( mor
% 0.20/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.20/0.49            ( ( X @ U )
% 0.20/0.49            | ( Y @ U ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mand corresponds to set intersection
% 0.20/0.49  thf(mand_decl,type,
% 0.20/0.49      mand: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mand,definition,
% 0.20/0.49      ( mand
% 0.20/0.49      = ( ^ [X: $i > $o,Y: $i > $o,U: $i] :
% 0.20/0.49            ( ( X @ U )
% 0.20/0.49            & ( Y @ U ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mimpl defined via mnot and mor
% 0.20/0.49  thf(mimpl_decl,type,
% 0.20/0.49      mimpl: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mimpl,definition,
% 0.20/0.49      ( mimpl
% 0.20/0.49      = ( ^ [U: $i > $o,V: $i > $o] : ( mor @ ( mnot @ U ) @ V ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----miff defined via mand and mimpl
% 0.20/0.49  thf(miff_decl,type,
% 0.20/0.49      miff: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(miff,definition,
% 0.20/0.49      ( miff
% 0.20/0.49      = ( ^ [U: $i > $o,V: $i > $o] : ( mand @ ( mimpl @ U @ V ) @ ( mimpl @ V @ U ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mbox
% 0.20/0.49  thf(mbox_decl,type,
% 0.20/0.49      mbox: ( $i > $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mbox,definition,
% 0.20/0.49      ( mbox
% 0.20/0.49      = ( ^ [R: $i > $i > $o,P: $i > $o,X: $i] :
% 0.20/0.49          ! [Y: $i] :
% 0.20/0.49            ( ( R @ X @ Y )
% 0.20/0.49           => ( P @ Y ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mdia
% 0.20/0.49  thf(mdia_decl,type,
% 0.20/0.49      mdia: ( $i > $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mdia,definition,
% 0.20/0.49      ( mdia
% 0.20/0.49      = ( ^ [R: $i > $i > $o,P: $i > $o,X: $i] :
% 0.20/0.49          ? [Y: $i] :
% 0.20/0.49            ( ( R @ X @ Y )
% 0.20/0.49            & ( P @ Y ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----For mall and mexists, i.e., first order modal logic, we declare a new
% 0.20/0.49  %----base type individuals
% 0.20/0.49  thf(individuals_decl,type,
% 0.20/0.49      individuals: $tType ).
% 0.20/0.49  
% 0.20/0.49  %----mall
% 0.20/0.49  thf(mall_decl,type,
% 0.20/0.49      mall: ( individuals > $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mall,definition,
% 0.20/0.49      ( mall
% 0.20/0.49      = ( ^ [P: individuals > $i > $o,W: $i] :
% 0.20/0.49          ! [X: individuals] : ( P @ X @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----mexists
% 0.20/0.49  thf(mexists_decl,type,
% 0.20/0.49      mexists: ( individuals > $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mexists,definition,
% 0.20/0.49      ( mexists
% 0.20/0.49      = ( ^ [P: individuals > $i > $o,W: $i] :
% 0.20/0.49          ? [X: individuals] : ( P @ X @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----Validity of a multi modal logic formula can now be encoded as
% 0.20/0.49  thf(mvalid_decl,type,
% 0.20/0.49      mvalid: ( $i > $o ) > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mvalid,definition,
% 0.20/0.49      ( mvalid
% 0.20/0.49      = ( ^ [P: $i > $o] :
% 0.20/0.49          ! [W: $i] : ( P @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----Satisfiability of a multi modal logic formula can now be encoded as
% 0.20/0.49  thf(msatisfiable_decl,type,
% 0.20/0.49      msatisfiable: ( $i > $o ) > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(msatisfiable,definition,
% 0.20/0.49      ( msatisfiable
% 0.20/0.49      = ( ^ [P: $i > $o] :
% 0.20/0.49          ? [W: $i] : ( P @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----Countersatisfiability of a multi modal logic formula can now be encoded as
% 0.20/0.49  thf(mcountersatisfiable_decl,type,
% 0.20/0.49      mcountersatisfiable: ( $i > $o ) > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(mcountersatisfiable,definition,
% 0.20/0.49      ( mcountersatisfiable
% 0.20/0.49      = ( ^ [P: $i > $o] :
% 0.20/0.49          ? [W: $i] :
% 0.20/0.49            ~ ( P @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----Invalidity of a multi modal logic formula can now be encoded as
% 0.20/0.49  thf(minvalid_decl,type,
% 0.20/0.49      minvalid: ( $i > $o ) > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(minvalid,definition,
% 0.20/0.49      ( minvalid
% 0.20/0.49      = ( ^ [P: $i > $o] :
% 0.20/0.49          ! [W: $i] :
% 0.20/0.49            ~ ( P @ W ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.49  %----Include axioms of ICL logic
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.49  %----The encoding of ICL logic employs only one accessibility relation which
% 0.20/0.49  %----introduce here as a constant 'rel'; we don't need multimodal logic.
% 0.20/0.49  thf(rel_type,type,
% 0.20/0.49      rel: $i > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  %----ICL logic distiguishes between atoms and principals; for this we introduce
% 0.20/0.49  %----a predicate 'icl_atom' ...
% 0.20/0.49  thf(icl_atom_type,type,
% 0.20/0.49      icl_atom: ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_atom,definition,
% 0.20/0.49      ( icl_atom
% 0.20/0.49      = ( ^ [P: $i > $o] : ( mbox @ rel @ P ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %---- ... and also a predicate 'icl_princ'
% 0.20/0.49  thf(icl_princ_type,type,
% 0.20/0.49      icl_princ: ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_princ,definition,
% 0.20/0.49      ( icl_princ
% 0.20/0.49      = ( ^ [P: $i > $o] : P ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----ICL and connective
% 0.20/0.49  thf(icl_and_type,type,
% 0.20/0.49      icl_and: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_and,definition,
% 0.20/0.49      ( icl_and
% 0.20/0.49      = ( ^ [A: $i > $o,B: $i > $o] : ( mand @ A @ B ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----ICL or connective
% 0.20/0.49  thf(icl_or_type,type,
% 0.20/0.49      icl_or: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_or,definition,
% 0.20/0.49      ( icl_or
% 0.20/0.49      = ( ^ [A: $i > $o,B: $i > $o] : ( mor @ A @ B ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----ICL implication connective
% 0.20/0.49  thf(icl_impl_type,type,
% 0.20/0.49      icl_impl: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_impl,definition,
% 0.20/0.49      ( icl_impl
% 0.20/0.49      = ( ^ [A: $i > $o,B: $i > $o] : ( mbox @ rel @ ( mimpl @ A @ B ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----ICL true connective
% 0.20/0.49  thf(icl_true_type,type,
% 0.20/0.49      icl_true: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_true,definition,
% 0.20/0.49      icl_true = mtrue ).
% 0.20/0.49  
% 0.20/0.49  %----ICL false connective
% 0.20/0.49  thf(icl_false_type,type,
% 0.20/0.49      icl_false: $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_false,definition,
% 0.20/0.49      icl_false = mfalse ).
% 0.20/0.49  
% 0.20/0.49  %----ICL says connective
% 0.20/0.49  thf(icl_says_type,type,
% 0.20/0.49      icl_says: ( $i > $o ) > ( $i > $o ) > $i > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_says,definition,
% 0.20/0.49      ( icl_says
% 0.20/0.49      = ( ^ [A: $i > $o,S: $i > $o] : ( mbox @ rel @ ( mor @ A @ S ) ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %----An ICL formula is K-valid if its translation into modal logic is valid
% 0.20/0.49  thf(iclval_decl_type,type,
% 0.20/0.49      iclval: ( $i > $o ) > $o ).
% 0.20/0.49  
% 0.20/0.49  thf(icl_s4_valid,definition,
% 0.20/0.49      ( iclval
% 0.20/0.49      = ( ^ [X: $i > $o] : ( mvalid @ X ) ) ) ).
% 0.20/0.49  
% 0.20/0.49  %------------------------------------------------------------------------------
% 0.20/0.50  %----Include axioms for ICL notions of validity wrt S4
% 0.20/0.50  %------------------------------------------------------------------------------
% 0.20/0.50  %----We add the reflexivity and the transitivity axiom to obtain S4.
% 0.20/0.50  thf(refl_axiom,axiom,
% 0.20/0.50      ! [A: $i > $o] : ( mvalid @ ( mimpl @ ( mbox @ rel @ A ) @ A ) ) ).
% 0.20/0.50  
% 0.20/0.50  thf(trans_axiom,axiom,
% 0.20/0.50      ! [B: $i > $o] : ( mvalid @ ( mimpl @ ( mbox @ rel @ B ) @ ( mbox @ rel @ ( mbox @ rel @ B ) ) ) ) ).
% 0.20/0.50  
% 0.20/0.50  %------------------------------------------------------------------------------
% 0.20/0.50  %------------------------------------------------------------------------------
% 0.20/0.50  %----The principals
% 0.20/0.50  thf(admin,type,
% 0.20/0.50      admin: $i > $o ).
% 0.20/0.50  
% 0.20/0.50  thf(bob,type,
% 0.20/0.50      bob: $i > $o ).
% 0.20/0.50  
% 0.20/0.50  %----The atomic propositions
% 0.20/0.50  thf(deletfile1,type,
% 0.20/0.50      deletefile1: $i > $o ).
% 0.20/0.50  
% 0.20/0.50  %----The axioms of the example problem
% 0.20/0.50  %----(admin says deletefile1) => deletfile1
% 0.20/0.50  thf(ax1,axiom,
% 0.20/0.50      iclval @ ( icl_impl @ ( icl_says @ ( icl_princ @ admin ) @ ( icl_atom @ deletefile1 ) ) @ ( icl_atom @ deletefile1 ) ) ).
% 0.20/0.50  
% 0.20/0.50  %----(admin says ((bob says deletefile1) => deletfile1))
% 0.20/0.50  thf(ax2,axiom,
% 0.20/0.50      iclval @ ( icl_says @ ( icl_princ @ admin ) @ ( icl_impl @ ( icl_says @ ( icl_princ @ bob ) @ ( icl_atom @ deletefile1 ) ) @ ( icl_atom @ deletefile1 ) ) ) ).
% 0.20/0.50  
% 0.20/0.50  %----(bob says deletefile1)
% 0.20/0.50  thf(ax3,axiom,
% 0.20/0.50      iclval @ ( icl_says @ ( icl_princ @ bob ) @ ( icl_atom @ deletefile1 ) ) ).
% 0.20/0.50  
% 0.20/0.50  %----We prove: It holds deletefile1
% 0.20/0.50  thf(ex1,conjecture,
% 0.20/0.50      iclval @ ( icl_atom @ deletefile1 ) ).
% 0.20/0.50  
% 0.20/0.50  %------------------------------------------------------------------------------
% 0.20/0.50  ------- convert to smt2 : /export/starexec/sandbox/tmp/tmp.33lFQi12gj/cvc5---1.0.5_24566.p...
% 0.20/0.50  (declare-sort $$unsorted 0)
% 0.20/0.50  (declare-fun tptp.current_world () $$unsorted)
% 0.20/0.50  (declare-fun tptp.prop_a ($$unsorted) Bool)
% 0.20/0.50  (declare-fun tptp.prop_b ($$unsorted) Bool)
% 0.20/0.50  (declare-fun tptp.prop_c ($$unsorted) Bool)
% 0.20/0.50  (declare-fun tptp.mfalse ($$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mfalse (lambda ((X $$unsorted)) false)))
% 0.20/0.50  (declare-fun tptp.mtrue ($$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mtrue (lambda ((X $$unsorted)) true)))
% 0.20/0.50  (declare-fun tptp.mnot ((-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mnot (lambda ((X (-> $$unsorted Bool)) (U $$unsorted)) (not (@ X U)))))
% 0.20/0.50  (declare-fun tptp.mor ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mor (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (or (@ X U) (@ Y U)))))
% 0.20/0.50  (declare-fun tptp.mand ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mand (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (@ Y U)))))
% 0.20/0.50  (declare-fun tptp.mimpl ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mimpl (lambda ((U (-> $$unsorted Bool)) (V (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mor (@ tptp.mnot U)) V) __flatten_var_0))))
% 0.20/0.50  (declare-fun tptp.miff ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.miff (lambda ((U (-> $$unsorted Bool)) (V (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mand (@ (@ tptp.mimpl U) V)) (@ (@ tptp.mimpl V) U)) __flatten_var_0))))
% 0.20/0.50  (declare-fun tptp.mbox ((-> $$unsorted $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mbox (lambda ((R (-> $$unsorted $$unsorted Bool)) (P (-> $$unsorted Bool)) (X $$unsorted)) (forall ((Y $$unsorted)) (=> (@ (@ R X) Y) (@ P Y))))))
% 0.20/0.50  (declare-fun tptp.mdia ((-> $$unsorted $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mdia (lambda ((R (-> $$unsorted $$unsorted Bool)) (P (-> $$unsorted Bool)) (X $$unsorted)) (exists ((Y $$unsorted)) (and (@ (@ R X) Y) (@ P Y))))))
% 0.20/0.50  (declare-sort tptp.individuals 0)
% 0.20/0.50  (declare-fun tptp.mall ((-> tptp.individuals $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mall (lambda ((P (-> tptp.individuals $$unsorted Bool)) (W $$unsorted)) (forall ((X tptp.individuals)) (@ (@ P X) W)))))
% 0.20/0.50  (declare-fun tptp.mexists ((-> tptp.individuals $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.50  (assert (= tptp.mexists (lambda ((P (-> tptp.individuals $$unsorted Bool)) (W $$unsorted)) (exists ((X tptp.individuals)) (@ (@ P X) W)))))
% 0.20/0.57  (declare-fun tptp.mvalid ((-> $$unsorted Bool)) Bool)
% 0.20/0.57  (assert (= tptp.mvalid (lambda ((P (-> $$unsorted Bool))) (forall ((W $$unsorted)) (@ P W)))))
% 0.20/0.57  (declare-fun tptp.msatisfiable ((-> $$unsorted Bool)) Bool)
% 0.20/0.57  (assert (= tptp.msatisfiable (lambda ((P (-> $$unsorted Bool))) (exists ((W $$unsorted)) (@ P W)))))
% 0.20/0.57  (declare-fun tptp.mcountersatisfiable ((-> $$unsorted Bool)) Bool)
% 0.20/0.57  (assert (= tptp.mcountersatisfiable (lambda ((P (-> $$unsorted Bool))) (exists ((W $$unsorted)) (not (@ P W))))))
% 0.20/0.57  (declare-fun tptp.minvalid ((-> $$unsorted Bool)) Bool)
% 0.20/0.57  (assert (= tptp.minvalid (lambda ((P (-> $$unsorted Bool))) (forall ((W $$unsorted)) (not (@ P W))))))
% 0.20/0.57  (declare-fun tptp.rel ($$unsorted $$unsorted) Bool)
% 0.20/0.57  (declare-fun tptp.icl_atom ((-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_atom (lambda ((P (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) P) __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.icl_princ ((-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_princ (lambda ((P (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ P __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.icl_and ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_and (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mand A) B) __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.icl_or ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_or (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mor A) B) __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.icl_impl ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_impl (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) (@ (@ tptp.mimpl A) B)) __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.icl_true ($$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_true tptp.mtrue))
% 0.20/0.57  (declare-fun tptp.icl_false ($$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_false tptp.mfalse))
% 0.20/0.57  (declare-fun tptp.icl_says ((-> $$unsorted Bool) (-> $$unsorted Bool) $$unsorted) Bool)
% 0.20/0.57  (assert (= tptp.icl_says (lambda ((A (-> $$unsorted Bool)) (S (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) (@ (@ tptp.mor A) S)) __flatten_var_0))))
% 0.20/0.57  (declare-fun tptp.iclval ((-> $$unsorted Bool)) Bool)
% 0.20/0.57  (assert (= tptp.iclval (lambda ((X (-> $$unsorted Bool))) (@ tptp.mvalid X))))
% 0.20/0.57  (assert (forall ((A (-> $$unsorted Bool))) (@ tptp.mvalid (@ (@ tptp.mimpl (@ (@ tptp.mbox tptp.rel) A)) A))))
% 0.20/0.57  (assert (forall ((B (-> $$unsorted Bool))) (let ((_let_1 (@ tptp.mbox tptp.rel))) (let ((_let_2 (@ _let_1 B))) (@ tptp.mvalid (@ (@ tptp.mimpl _let_2) (@ _let_1 _let_2)))))))
% 0.20/0.57  (declare-fun tptp.admin ($$unsorted) Bool)
% 0.20/0.57  (declare-fun tptp.bob ($$unsorted) Bool)
% 0.20/0.57  (declare-fun tptp.deletefile1 ($$unsorted) Bool)
% 0.20/0.57  (assert (let ((_let_1 (@ tptp.icl_atom tptp.deletefile1))) (@ tptp.iclval (@ (@ tptp.icl_impl (@ (@ tptp.icl_says (@ tptp.icl_princ tptp.admin)) _let_1)) _let_1))))
% 0.20/0.57  (assert (let ((_let_1 (@ tptp.icl_atom tptp.deletefile1))) (@ tptp.iclval (@ (@ tptp.icl_says (@ tptp.icl_princ tptp.admin)) (@ (@ tptp.icl_impl (@ (@ tptp.icl_says (@ tptp.icl_princ tptp.bob)) _let_1)) _let_1)))))
% 0.20/0.57  (assert (@ tptp.iclval (@ (@ tptp.icl_says (@ tptp.icl_princ tptp.bob)) (@ tptp.icl_atom tptp.deletefile1))))
% 0.20/0.57  (assert (not (@ tptp.iclval (@ tptp.icl_atom tptp.deletefile1))))
% 0.20/0.57  (set-info :filename cvc5---1.0.5_24566)
% 0.20/0.57  (check-sat-assuming ( true ))
% 0.20/0.57  ------- get file name : TPTP file name is SWV428^2
% 0.20/0.57  ------- cvc5-thf : /export/starexec/sandbox/solver/bin/cvc5---1.0.5_24566.smt2...
% 0.20/0.57  --- Run --ho-elim --full-saturate-quant at 10...
% 0.20/0.57  % SZS status Theorem for SWV428^2
% 0.20/0.57  % SZS output start Proof for SWV428^2
% 0.20/0.57  (
% 0.20/0.57  (let ((_let_1 (@ tptp.icl_atom tptp.deletefile1))) (let ((_let_2 (not (@ tptp.iclval _let_1)))) (let ((_let_3 (@ (@ tptp.icl_says (@ tptp.icl_princ tptp.bob)) _let_1))) (let ((_let_4 (@ tptp.iclval _let_3))) (let ((_let_5 (@ tptp.icl_says (@ tptp.icl_princ tptp.admin)))) (let ((_let_6 (@ tptp.iclval (@ _let_5 (@ (@ tptp.icl_impl _let_3) _let_1))))) (let ((_let_7 (@ tptp.iclval (@ (@ tptp.icl_impl (@ _let_5 _let_1)) _let_1)))) (let ((_let_8 (forall ((A (-> $$unsorted Bool))) (@ tptp.mvalid (@ (@ tptp.mimpl (@ (@ tptp.mbox tptp.rel) A)) A))))) (let ((_let_9 (= tptp.iclval (lambda ((X (-> $$unsorted Bool))) (@ tptp.mvalid X))))) (let ((_let_10 (= tptp.icl_says (lambda ((A (-> $$unsorted Bool)) (S (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) (@ (@ tptp.mor A) S)) __flatten_var_0))))) (let ((_let_11 (= tptp.icl_false tptp.mfalse))) (let ((_let_12 (= tptp.icl_true tptp.mtrue))) (let ((_let_13 (= tptp.icl_impl (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) (@ (@ tptp.mimpl A) B)) __flatten_var_0))))) (let ((_let_14 (= tptp.icl_or (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mor A) B) __flatten_var_0))))) (let ((_let_15 (= tptp.icl_and (lambda ((A (-> $$unsorted Bool)) (B (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mand A) B) __flatten_var_0))))) (let ((_let_16 (= tptp.icl_princ (lambda ((P (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ P __flatten_var_0))))) (let ((_let_17 (= tptp.icl_atom (lambda ((P (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mbox tptp.rel) P) __flatten_var_0))))) (let ((_let_18 (= tptp.minvalid (lambda ((P (-> $$unsorted Bool))) (forall ((W $$unsorted)) (not (@ P W))))))) (let ((_let_19 (= tptp.mcountersatisfiable (lambda ((P (-> $$unsorted Bool))) (exists ((W $$unsorted)) (not (@ P W))))))) (let ((_let_20 (= tptp.msatisfiable (lambda ((P (-> $$unsorted Bool))) (exists ((W $$unsorted)) (@ P W)))))) (let ((_let_21 (= tptp.mvalid (lambda ((P (-> $$unsorted Bool))) (forall ((W $$unsorted)) (@ P W)))))) (let ((_let_22 (= tptp.mexists (lambda ((P (-> tptp.individuals $$unsorted Bool)) (W $$unsorted)) (exists ((X tptp.individuals)) (@ (@ P X) W)))))) (let ((_let_23 (= tptp.mall (lambda ((P (-> tptp.individuals $$unsorted Bool)) (W $$unsorted)) (forall ((X tptp.individuals)) (@ (@ P X) W)))))) (let ((_let_24 (= tptp.mdia (lambda ((R (-> $$unsorted $$unsorted Bool)) (P (-> $$unsorted Bool)) (X $$unsorted)) (exists ((Y $$unsorted)) (and (@ (@ R X) Y) (@ P Y))))))) (let ((_let_25 (= tptp.mbox (lambda ((R (-> $$unsorted $$unsorted Bool)) (P (-> $$unsorted Bool)) (X $$unsorted)) (forall ((Y $$unsorted)) (=> (@ (@ R X) Y) (@ P Y))))))) (let ((_let_26 (= tptp.miff (lambda ((U (-> $$unsorted Bool)) (V (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mand (@ (@ tptp.mimpl U) V)) (@ (@ tptp.mimpl V) U)) __flatten_var_0))))) (let ((_let_27 (= tptp.mimpl (lambda ((U (-> $$unsorted Bool)) (V (-> $$unsorted Bool)) (__flatten_var_0 $$unsorted)) (@ (@ (@ tptp.mor (@ tptp.mnot U)) V) __flatten_var_0))))) (let ((_let_28 (= tptp.mand (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (and (@ X U) (@ Y U)))))) (let ((_let_29 (= tptp.mor (lambda ((X (-> $$unsorted Bool)) (Y (-> $$unsorted Bool)) (U $$unsorted)) (or (@ X U) (@ Y U)))))) (let ((_let_30 (= tptp.mnot (lambda ((X (-> $$unsorted Bool)) (U $$unsorted)) (not (@ X U)))))) (let ((_let_31 (= tptp.mtrue (lambda ((X $$unsorted)) true)))) (let ((_let_32 (= tptp.mfalse (lambda ((X $$unsorted)) false)))) (let ((_let_33 (forall ((BOUND_VARIABLE_1635 |u_(-> $$unsorted Bool)|) (W $$unsorted)) (or (not (forall ((Y $$unsorted)) (or (not (ho_2 (ho_4 k_3 W) Y)) (ho_2 BOUND_VARIABLE_1635 Y)))) (ho_2 BOUND_VARIABLE_1635 W))))) (let ((_let_34 (ho_4 k_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9))) (let ((_let_35 (ho_2 _let_34 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9))) (let ((_let_36 (EQ_RESOLVE (ASSUME :args (_let_32)) (MACRO_SR_EQ_INTRO :args (_let_32 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_37 (EQ_RESOLVE (ASSUME :args (_let_31)) (MACRO_SR_EQ_INTRO :args (_let_31 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_38 (ASSUME :args (_let_30)))) (let ((_let_39 (ASSUME :args (_let_29)))) (let ((_let_40 (ASSUME :args (_let_28)))) (let ((_let_41 (EQ_RESOLVE (ASSUME :args (_let_27)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_27 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_42 (EQ_RESOLVE (ASSUME :args (_let_26)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_26 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_43 (EQ_RESOLVE (ASSUME :args (_let_25)) (MACRO_SR_EQ_INTRO :args (_let_25 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_44 (EQ_RESOLVE (ASSUME :args (_let_24)) (MACRO_SR_EQ_INTRO :args (_let_24 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_45 (ASSUME :args (_let_23)))) (let ((_let_46 (EQ_RESOLVE (ASSUME :args (_let_22)) (MACRO_SR_EQ_INTRO :args (_let_22 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_47 (ASSUME :args (_let_21)))) (let ((_let_48 (EQ_RESOLVE (ASSUME :args (_let_20)) (MACRO_SR_EQ_INTRO :args (_let_20 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_49 (EQ_RESOLVE (ASSUME :args (_let_19)) (MACRO_SR_EQ_INTRO :args (_let_19 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_50 (ASSUME :args (_let_18)))) (let ((_let_51 (EQ_RESOLVE (ASSUME :args (_let_17)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_17 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_52 (ASSUME :args (_let_16)))) (let ((_let_53 (EQ_RESOLVE (ASSUME :args (_let_15)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_15 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_54 (EQ_RESOLVE (ASSUME :args (_let_14)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_14 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_55 (EQ_RESOLVE (ASSUME :args (_let_13)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_13 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_56 (EQ_RESOLVE (SYMM (ASSUME :args (_let_12))) (MACRO_SR_EQ_INTRO (AND_INTRO _let_55 _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args ((= tptp.mtrue tptp.icl_true) SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_57 (EQ_RESOLVE (SYMM (ASSUME :args (_let_11))) (MACRO_SR_EQ_INTRO (AND_INTRO _let_56 _let_55 _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args ((= tptp.mfalse tptp.icl_false) SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_58 (EQ_RESOLVE (ASSUME :args (_let_10)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_57 _let_56 _let_55 _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_10 SB_DEFAULT SBA_FIXPOINT))))) (let ((_let_59 (AND_INTRO (EQ_RESOLVE (ASSUME :args (_let_9)) (MACRO_SR_EQ_INTRO (AND_INTRO _let_58 _let_57 _let_56 _let_55 _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36) :args (_let_9 SB_DEFAULT SBA_FIXPOINT))) _let_58 _let_57 _let_56 _let_55 _let_54 _let_53 _let_52 _let_51 _let_50 _let_49 _let_48 _let_47 _let_46 _let_45 _let_44 _let_43 _let_42 _let_41 _let_40 _let_39 _let_38 _let_37 _let_36))) (let ((_let_60 (EQ_RESOLVE (ASSUME :args (_let_8)) (TRANS (MACRO_SR_EQ_INTRO _let_59 :args (_let_8 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (forall ((A (-> $$unsorted Bool)) (W $$unsorted)) (or (not (forall ((Y $$unsorted)) (or (not (@ (@ tptp.rel W) Y)) (@ A Y)))) (@ A W))) _let_33))))))) (let ((_let_61 (ho_2 k_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9))) (let ((_let_62 (not _let_35))) (let ((_let_63 (or _let_62 _let_61))) (let ((_let_64 (forall ((BOUND_VARIABLE_1355 $$unsorted)) (or (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1355) BOUND_VARIABLE_1355)) (ho_2 k_5 BOUND_VARIABLE_1355))))) (let ((_let_65 (forall ((BOUND_VARIABLE_1412 $$unsorted)) (or (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1412) BOUND_VARIABLE_1412)) (ho_2 k_5 BOUND_VARIABLE_1412))))) (let ((_let_66 (forall ((BOUND_VARIABLE_1464 $$unsorted)) (or (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1464) BOUND_VARIABLE_1464)) (ho_2 k_5 BOUND_VARIABLE_1464))))) (let ((_let_67 (ho_2 (ho_4 k_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10))) (let ((_let_68 (not _let_67))) (let ((_let_69 (or _let_68 (ho_2 k_5 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10)))) (let ((_let_70 (forall ((W $$unsorted) (Y $$unsorted)) (not (ho_2 (ho_4 k_3 W) Y))))) (let ((_let_71 (forall ((BOUND_VARIABLE_1387 $$unsorted)) (or (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1387) BOUND_VARIABLE_1387)) (ho_2 k_6 BOUND_VARIABLE_1387))))) (let ((_let_72 (not _let_71))) (let ((_let_73 (not _let_64))) (let ((_let_74 (and _let_73 _let_72))) (let ((_let_75 (forall ((W $$unsorted) (Y $$unsorted)) (or (not (ho_2 (ho_4 k_3 W) Y)) (ho_2 k_7 Y))))) (let ((_let_76 (or (not (ho_2 (ho_4 k_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12)) (ho_2 k_7 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12)))) (let ((_let_77 (forall ((BOUND_VARIABLE_1531 $$unsorted)) (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1531) BOUND_VARIABLE_1531))))) (let ((_let_78 (or (not (ho_2 (ho_4 k_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11)) (ho_2 k_6 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11)))) (let ((_let_79 (forall ((BOUND_VARIABLE_1496 $$unsorted)) (or (not (ho_2 (ho_4 k_3 BOUND_VARIABLE_1496) BOUND_VARIABLE_1496)) (ho_2 k_7 BOUND_VARIABLE_1496))))) (let ((_let_80 (forall ((W $$unsorted) (Y $$unsorted)) (or (not (ho_2 (ho_4 k_3 W) Y)) (ho_2 k_6 Y))))) (let ((_let_81 (not _let_79))) (let ((_let_82 (and (not _let_66) _let_81))) (let ((_let_83 (or))) (let ((_let_84 (_let_73))) (let ((_let_85 (ho_2 (ho_4 k_3 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8) SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9))) (let ((_let_86 (not _let_85))) (let ((_let_87 (or _let_86 _let_61))) (let ((_let_88 (forall ((W $$unsorted) (Y $$unsorted)) (or (not (ho_2 (ho_4 k_3 W) Y)) (ho_2 k_5 Y))))) (let ((_let_89 (not _let_87))) (let ((_let_90 (not _let_88))) (let ((_let_91 (EQ_RESOLVE (ASSUME :args (_let_2)) (TRANS (MACRO_SR_EQ_INTRO _let_59 :args (_let_2 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (not (forall ((W $$unsorted) (Y $$unsorted)) (or (not (@ (@ tptp.rel W) Y)) (@ tptp.deletefile1 Y)))) _let_90))))))) (let ((_let_92 (MACRO_RESOLUTION_TRUST (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE _let_91) :args (_let_90))) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_90) _let_88))) (REFL :args (_let_89)) :args _let_83)) _let_91 :args (_let_89 true _let_88)))) (let ((_let_93 (_let_70))) (let ((_let_94 (forall ((BOUND_VARIABLE_1412 $$unsorted)) (or (not (@ (@ tptp.rel BOUND_VARIABLE_1412) BOUND_VARIABLE_1412)) (@ tptp.deletefile1 BOUND_VARIABLE_1412))))) (let ((_let_95 (forall ((BOUND_VARIABLE_1464 $$unsorted)) (or (not (@ (@ tptp.rel BOUND_VARIABLE_1464) BOUND_VARIABLE_1464)) (@ tptp.deletefile1 BOUND_VARIABLE_1464))))) (let ((_let_96 (_let_75))) (let ((_let_97 (_let_77))) (let ((_let_98 (_let_72))) (let ((_let_99 (_let_81))) (let ((_let_100 (_let_80))) (let ((_let_101 (_let_64))) (SCOPE (SCOPE (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (MACRO_SR_PRED_ELIM (SCOPE (INSTANTIATE _let_60 :args (_let_34 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((not (= (ho_2 BOUND_VARIABLE_1635 W) true))))) :args (_let_33)))) (MACRO_RESOLUTION_TRUST (REORDERING (CNF_OR_POS :args (_let_63)) :args ((or _let_61 _let_62 (not _let_63)))) (MACRO_RESOLUTION_TRUST (CNF_OR_NEG :args (_let_87 1)) _let_92 :args ((not _let_61) true _let_87)) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_101) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9 QUANTIFIERS_INST_E_MATCHING_SIMPLE ((not (= (ho_2 k_5 BOUND_VARIABLE_1355) true))))) :args _let_101)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (ASSUME :args (_let_6)) (TRANS (MACRO_SR_EQ_INTRO _let_59 :args (_let_6 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (or (and (not _let_95) (not (forall ((BOUND_VARIABLE_1496 $$unsorted)) (or (not (@ (@ tptp.rel BOUND_VARIABLE_1496) BOUND_VARIABLE_1496)) (@ tptp.bob BOUND_VARIABLE_1496))))) _let_94 (forall ((BOUND_VARIABLE_1531 $$unsorted)) (not (@ (@ tptp.rel BOUND_VARIABLE_1531) BOUND_VARIABLE_1531))) (forall ((W $$unsorted) (Y $$unsorted)) (or (not (@ (@ tptp.rel W) Y)) (@ tptp.admin Y)))) (or _let_82 _let_65 _let_77 _let_80)))))) :args ((or _let_65 _let_80 _let_77 _let_82))) (REORDERING (CNF_AND_POS :args (_let_82 1)) :args ((or _let_81 (not _let_82)))) (IMPLIES_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_100) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_11 QUANTIFIERS_INST_CBQI_CONFLICT)) :args _let_100)) (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE (ASSUME :args _let_99)) :args _let_99)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_81) _let_79))) (REFL :args ((not _let_76))) :args _let_83)) (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE (ASSUME :args _let_98)) :args _let_98)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_72) _let_71))) (REFL :args ((not _let_78))) :args _let_83)) (IMPLIES_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_97) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_10 QUANTIFIERS_INST_CBQI_CONFLICT)) :args _let_97)) (IMPLIES_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_96) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_12 QUANTIFIERS_INST_CBQI_CONFLICT)) :args _let_96)) (REORDERING (CNF_AND_POS :args (_let_74 1)) :args ((or _let_72 (not _let_74)))) (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_69 0)) (CONG (REFL :args (_let_69)) (MACRO_SR_PRED_INTRO :args ((= (not _let_68) _let_67))) :args _let_83)) :args ((or _let_67 _let_69))) (EQ_RESOLVE (ASSUME :args (_let_4)) (TRANS (MACRO_SR_EQ_INTRO _let_59 :args (_let_4 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (or _let_95 (forall ((W $$unsorted) (Y $$unsorted)) (or (not (@ (@ tptp.rel W) Y)) (@ tptp.bob Y)))) (or _let_66 _let_75)))))) (REORDERING (EQ_RESOLVE (ASSUME :args (_let_7)) (TRANS (MACRO_SR_EQ_INTRO _let_59 :args (_let_7 SB_DEFAULT SBA_FIXPOINT)) (PREPROCESS :args ((= (or (and (not (forall ((BOUND_VARIABLE_1355 $$unsorted)) (or (not (@ (@ tptp.rel BOUND_VARIABLE_1355) BOUND_VARIABLE_1355)) (@ tptp.deletefile1 BOUND_VARIABLE_1355)))) (not (forall ((BOUND_VARIABLE_1387 $$unsorted)) (or (not (@ (@ tptp.rel BOUND_VARIABLE_1387) BOUND_VARIABLE_1387)) (@ tptp.admin BOUND_VARIABLE_1387))))) _let_94 (forall ((W $$unsorted) (Y $$unsorted)) (not (@ (@ tptp.rel W) Y)))) (or _let_74 _let_65 _let_70)))))) :args ((or _let_70 _let_65 _let_74))) (MACRO_RESOLUTION_TRUST (IMPLIES_ELIM (SCOPE (INSTANTIATE (ASSUME :args _let_93) :args (SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_8 SKOLEM_FUN_QUANTIFIERS_SKOLEMIZE_9 QUANTIFIERS_INST_CBQI_CONFLICT)) :args _let_93)) (MACRO_RESOLUTION_TRUST (REORDERING (EQ_RESOLVE (CNF_OR_NEG :args (_let_87 0)) (CONG (REFL :args (_let_87)) (MACRO_SR_PRED_INTRO :args ((= (not _let_86) _let_85))) :args _let_83)) :args ((or _let_85 _let_87))) _let_92 :args (_let_85 true _let_87)) :args ((not _let_70) false _let_85)) (EQ_RESOLVE (IMPLIES_ELIM (SCOPE (SKOLEMIZE (ASSUME :args _let_84)) :args _let_84)) (CONG (MACRO_SR_PRED_INTRO :args ((= (not _let_73) _let_64))) (REFL :args ((not _let_69))) :args _let_83)) (EQUIV_ELIM2 (ALPHA_EQUIV :args (_let_64 (= BOUND_VARIABLE_1355 BOUND_VARIABLE_1464)))) (REORDERING (EQUIV_ELIM1 (SYMM (ALPHA_EQUIV :args (_let_64 (= BOUND_VARIABLE_1355 BOUND_VARIABLE_1412))))) :args ((or _let_64 (not _let_65)))) :args (_let_64 true _let_82 true _let_80 false _let_79 true _let_78 true _let_77 false _let_76 true _let_71 false _let_67 false _let_75 false _let_74 true _let_70 true _let_69 true _let_66 true _let_65)) :args (_let_63 false _let_64)) :args (_let_62 true _let_61 false _let_63)) _let_60 :args (false true _let_35 false _let_33)) :args (_let_32 _let_31 _let_30 _let_29 _let_28 _let_27 _let_26 _let_25 _let_24 _let_23 _let_22 _let_21 _let_20 _let_19 _let_18 _let_17 _let_16 _let_15 _let_14 _let_13 _let_12 _let_11 _let_10 _let_9 _let_8 (forall ((B (-> $$unsorted Bool))) (let ((_let_1 (@ tptp.mbox tptp.rel))) (let ((_let_2 (@ _let_1 B))) (@ tptp.mvalid (@ (@ tptp.mimpl _let_2) (@ _let_1 _let_2)))))) _let_7 _let_6 _let_4 _let_2 true))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
% 0.20/0.57  )
% 0.20/0.57  % SZS output end Proof for SWV428^2
% 0.20/0.57  % cvc5---1.0.5 exiting
% 0.20/0.58  % cvc5---1.0.5 exiting
%------------------------------------------------------------------------------